<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:aop="http://www.springframework.org/schema/aop"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
           http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.0.xsd
           "
       default-lazy-init="true">

	<!-- ========================= GENERAL DEFINITIONS ========================= -->
	<bean id="categoryService" class="edu.gtcfla.km.appmodules.service.impl.CategoryServiceI" />
	
	<bean id="knowledgeService" class="edu.gtcfla.km.appmodules.service.impl.KnowledgeServiceI">
	</bean>
	
	<bean id="fileFormatService" class="edu.gtcfla.km.appmodules.service.impl.FileFormatServiceI" />

	<bean id="uploadFileService" class="edu.gtcfla.km.appmodules.service.impl.UploadFileServiceI">
	</bean>

	<bean id="attachmentService" class="edu.gtcfla.km.appmodules.service.impl.AttachmentServiceI">
		<property name="saveServerPath" value="${file.upload}" />
	</bean>

	<bean id="userPermissionService" class="edu.gtcfla.km.appmodules.service.impl.UserPermissionServiceI">
	</bean>

	<bean id="userGroupPermissionService" class="edu.gtcfla.km.appmodules.service.impl.UserGroupPermissionServiceI">
	</bean>

	<bean id="uploadFileManager" class="edu.gtcfla.km.appmodules.service.impl.SimpleUploadFileManager">
		<property name="saveServerPath" value="${file.upload}" />
	</bean>

	<bean id="userGroupService" class="edu.gtcfla.km.appmodules.service.impl.UserGroupServiceI">
	</bean>
	<bean id="logsService" class="edu.gtcfla.km.appmodules.service.impl.LogsServiceImpl">
	</bean>
	<!-- 配置aspect切面类 -->
	<bean id="logsController" class="edu.gtcfla.km.appmodules.web.LogsController">
		<!--操作日志中注入的operateLogBiz
		<property name="operateLogBiz" ref="operatorLogBiz2"></property> -->
	</bean>
	<!-- 配置AOP -->
	<aop:config>
		<!-- 配置aspect切面类 -->
		<aop:aspect ref="logsController">
			<!-- 配置pointcut,即切入点，对哪些类的哪些方法起到AOP的作用 -->
			<aop:pointcut id="userServiceMethods"
			    
				expression="execution(* edu.gtcfla.km.admin.appmodules.service.impl.*.*(..))" />
			<aop:pointcut id="appmodulesServiceMethods"
			    
				expression="execution(* edu.gtcfla.km.appmodules.service.impl.*.*(..))" />
			<!-- 配置advice,即Aspect类中的logging()方法，这里采用在业务方法执行前进行拦截 
			<aop:before method="logging" pointcut-ref="userServiceMethods" />
			<aop:before method="appmodules" pointcut-ref="appmodulesServiceMethods" />-->
		</aop:aspect>
	</aop:config>
</beans>